home *** CD-ROM | disk | FTP | other *** search
/ Disc Station 10 / Disc Station Vol 10.iso / vfw11j / setup.mst < prev    next >
Text File  |  1994-08-04  |  11KB  |  327 lines

  1. '**************************************************************************
  2. '*                  VfW 1.1 Runtime Setup
  3. '**************************************************************************
  4. '$INCLUDE 'setupapi.inc'
  5. '$INCLUDE 'mscpydis.inc'    ''System
  6. '$INCLUDE 'msdetect.inc'    ''Detects Avalilable Disk Space
  7.  
  8. ''Dialog ID's
  9. CONST WELCOME       = 100
  10. CONST ASKQUIT       = 200
  11. CONST EXITFAILURE   = 400
  12. CONST EXITQUIT      = 600
  13. CONST EXITSUCCESS   = 700
  14. CONST APPHELP       = 900
  15. CONST CHECK         = 2500
  16. 'CONST SMALLWIN      = 2200
  17. CONST SMALLWIN      = 6300
  18. CONST RESTART       = 2600
  19. CONST RESTARTII     = 2700
  20.  
  21. ''Bitmap ID
  22. CONST LOGO = 1
  23.  
  24. GLOBAL SizeReq&  '' Total Disk Size required for installation
  25.  
  26. ''File Types
  27. GLOBAL WinDir$
  28. GLOBAL WinSysDir$
  29. GLOBAL WINDRIVE$    ''Windows Drive Letter.
  30. GLOBAL CHECKSTATES$
  31.  
  32. DECLARE SUB Install
  33. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  34. DECLARE FUNCTION OnWindowsNT LIB "INIUPD.DLL" AS INTEGER
  35. DECLARE FUNCTION VflatdPresent LIB "iniupd.DLL" AS INTEGER
  36. DECLARE FUNCTION IsValidEnvironment LIB "mscuistf.dll" () As INTEGER
  37. DECLARE SUB Reboot LIB "iniupd.dll"
  38. DECLARE fUNCTION ExitWindowsExec  LIB "User" (Exec$, Param$) AS INTEGER
  39.  
  40. Declare Sub CheckHardware
  41. Declare function WritePrivateProfileString LIB "kernel" (lpszSection$,lpszEntry$,lpszString$,lpszFilename$) As Integer
  42. Declare function GetPrivateProfileString LIB "kernel" (lpszSection$, lpszEntry$, lpszDefault$, lpszReturnBuffer$, cbReturnBuffer%, lpszFilename$) As Integer
  43. Declare Function GetKeyboardType LIB "keyboard" (Keystute%) as integer
  44.  
  45. INIT:
  46.  
  47.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  48.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  49.  
  50.     WIN32ENABLED% = 0
  51.     MajorVer% = GetWindowsMajorVersion()
  52.     MinorVer% = GetWindowsMinorVersion()
  53.  
  54.     IsJP%=IsValidEnvironment()
  55.     IF MajorVer% < 3 OR (MajorVer% = 3 AND MinorVer% < 10) THEN
  56.         IF IsJP% THEN
  57.             GOTO JPEXIT
  58.         ELSE
  59.             GOTO ENGEXIT
  60.         ENDIF
  61.     ELSEIF IsJP% = 0 THEN
  62.         GOTO ENGEXIT
  63.     END IF
  64.  
  65.     IF OnWindowsNT() THEN
  66.       i% = DoMsgBox("é▒é╠âoü[âWâçâôé╠ Video for Windows é═ Windows NT Åπé┼Ä└ìsé╖éΘÄûé═Åoùêé▄é╣é±üB", "âCâôâXâgü[âïÅπé╠Æìê╙", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  67.       END
  68.     END IF
  69.  
  70.     SetBitmap CUIDLL$, LOGO
  71.     SetTitle "Video for Windows 1.1 Runtime"
  72.  
  73.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  74.     IF szInf$ = "" THEN
  75.        szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
  76.     END IF
  77.     ReadInfFile szInf$
  78.  
  79.     WINDRIVE$ = MID$(GetWindowsDir, 1, 1)
  80.  
  81.  
  82. WELCOME:
  83.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  84.     IF sz$ = "CONTINUE" THEN
  85.        UIPop 1
  86.      ELSE
  87.     GOSUB ASKQUIT
  88.     GOTO WELCOME
  89.     END IF
  90.  
  91. ''Prepare Copy list and check size
  92.  
  93.     ClearCopyList
  94.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  95.     WinDir$ = GetWindowsDir()
  96.     DEST$ = GetWindowsDir()
  97.     WinSysDir$ = GetWindowsSysDir()
  98.  
  99. ''  Runtime files (on Windows disk)
  100.  
  101.     AddSectionFilesToCopyList "VfW Runtime", SrcDir$, WinSysDir$
  102.     AddSectionFilesToCopyList "OLE2", SrcDir$, WinSysDir$
  103.     AddSectionFilesToCopyList "ACM Drivers", SrcDir$, WinSysDir$
  104.     AddSectionFilesToCopyList "MPlayer", SrcDir$, WinDir$
  105.     AddSectionFilesToCopyList "AVICodecs", SrcDir$, WinSysDir$
  106. ''    AddSectionFilesToCopyList "Indeo-ini", SrcDir$, WinDir$   deleted indeo.ini  94/07/06
  107.  
  108. ''  Check windrive diskspace
  109.     SizeReq& = GetCopyListCost ("","", "")
  110.     IF SizeReq& <> 0 THEN
  111.     GOSUB SMALLWIN
  112.     END
  113.     END IF
  114.  
  115. Install
  116.  
  117. '' Restart Windows: if it has to updates ACM from DOS, it restarts Windows automatically
  118. '' else, it gives the user the choice
  119.     RESTRT% = RestartListEmpty ()
  120.     Exe$ = DEST$ + "\_msrstrt.exe"
  121.     Batch$ = DEST$ + "\_mssetup.bat"
  122.     empty$ = ""
  123. RESTART:
  124.     IF RESTRT% = 0 THEN
  125.        sz$ = UIStartDlg(cuidll$, RESTART, "FInfo0DlgProc", 0, "")
  126.        IF sz$ = "REACTIVATE" THEN
  127.       GOTO RESTART
  128.        ENDIF
  129.        I% = ExitExecRestart ()
  130.        RemoveFile Exe$, cmoForce
  131.        RemoveFile Batch$, cmoForce
  132.        END
  133.     ELSE
  134.        sz$ = UIStartDlg(CUIDLL$, RESTARTII, "FQuitDlgProc", 0, "")
  135.        IF sz$ = "CONTINUE" THEN
  136.       I% = ExitWindowsExec (Exe$, empty$)
  137.       IF I% = 0 THEN
  138.          GOTO RESTART
  139.       ELSE
  140.          END
  141.      ENDIF
  142.        ELSEIF sz$ = "EXIT" THEN
  143.       UIPopAll
  144.       END
  145.        ELSEIF sz$ = "REACTIVATE" THEN
  146.       GOTO RESTART
  147.        ELSE
  148.       UIPop 1
  149.        END IF
  150.     END IF
  151.  
  152.  
  153. QUIT:
  154.     ON ERROR GOTO ERRQUIT
  155.  
  156.     IF ERR = 0 THEN
  157.     dlg% = EXITSUCCESS
  158.     ELSEIF ERR = STFQUIT THEN
  159.     dlg% = EXITQUIT
  160.     ELSE
  161.     dlg% = EXITFAILURE
  162.     END IF
  163. QUITL1:
  164.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  165.     IF sz$ = "REACTIVATE" THEN
  166.     GOTO QUITL1
  167.     END IF
  168.     UIPop 1
  169.     END
  170.  
  171. ERRQUIT:
  172.     i% = DoMsgBox("âZâbâgâAâbâvâfâBâXâNé╠âtâ@âCâïé¬ë≤éΩé─éóé▄é╖üBâTâ|ü[âgâZâôâ^ü[é▄é┼é▓ÿAùìë║é│éóüB", "âZâbâgâAâbâvÄ₧é╔ûΓæΦö¡É╢", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  173.     END
  174.  
  175.  
  176. ASKQUIT:
  177.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  178.  
  179.     IF sz$ = "EXIT" THEN
  180.     UIPopAll
  181. ''        ERROR STFQUIT
  182.     END
  183.     ELSEIF sz$ = "REACTIVATE" THEN
  184.     GOTO ASKQUIT
  185.     ELSE
  186.     UIPop 1
  187.     END IF
  188.     RETURN
  189.  
  190. SMALLWIN:
  191.     sz$ = UIStartDlg(CUIDLL$, SMALLWIN, "FInfo0DlgProc", 0, "")
  192.     IF sz$ = "REACTIVATE" THEN
  193.     GOTO SMALLWIN
  194.     END IF
  195.     UIPop 1
  196.     RETURN
  197.  
  198. JPEXIT:
  199.     i% = DoMsgBox("é▒é╠â\âtâgâEâFâAé╔é═üAMicrosoft Windows âoü[âWâçâô 3.1 ê╚ì~é¬òKùvé┼é╖üB  Windows é╠âoü[âWâçâôâAâbâvé≡ìsé┴é─é¡é╛é│éóüB", "âCâôâXâgü[âïÅπé╠Æìê╙", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  200.     END
  201. ENGEXIT:
  202.    msg1$="Japanese version of Microsoft Windows version 3.1 or grater is required for this software. "
  203.    msg2$="Please upgrade your version of Windows."
  204.    i% = DoMsgBox( msg1$+msg2$ ,"Installation Problem", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  205.    END
  206.  
  207.  
  208. '**
  209. '** Purpose:
  210. '**     Performs all installation operations.
  211. '** Arguments:
  212. '**     none.
  213. '** Returns:
  214. '**     none.
  215. '*************************************************************************
  216. SUB Install STATIC
  217.  
  218.     SetRestartDir WinDir$
  219.     CopyFilesInCopyList
  220.  
  221. '' Copy ir32.dll to ir30.dll 
  222.     CopyFile MakePath(WinSysDir$, "ir32.dll"), MakePath(WinSysDir$, "ir30.dll"), cmdOverwrite, 0
  223.  
  224. ''Updating WIN.INI and SYSTEM.INI
  225.     IF VflatdPresent() = 0 THEN
  226.        CreateSysIniKeyValue WinDir$ + "system.ini", "386Enh", "device", "dva.386", cmoOverwrite
  227.     END IF
  228.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.CVID", "iccvid.drv", cmoOverwrite
  229.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.MSVC", "msvidc.drv", cmoOverwrite
  230.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.IV31", "ir32.dll", cmoOverwrite
  231.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.IV32", "ir32.dll", cmoOverwrite
  232.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.RT21", "ir21.dll", cmoOverwrite
  233.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.YVU9", "iyvu9.dll", cmoOverwrite
  234.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "VIDC.MRLE", "MSRLE.drv", cmoOverwrite
  235.     CreateIniKeyValue WinDir$ + "WIN.INI", "mci extensions", "avi", "AVIVideo", cmoOverwrite
  236.     CreateIniKeyValue WinDir$ + "system.ini", "mci", "AVIVideo", "mciavi.drv", cmoOverwrite
  237.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "WaveMapper", "msacm.drv", cmoOverwrite
  238.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "MSACM.msadpcm", "msadpcm.acm", cmoOverwrite
  239.     CreateIniKeyValue WinDir$ + "system.ini", "Drivers", "MSACM.imaadpcm", "imaadpcm.acm", cmoOverwrite
  240.     CreateIniKeyValue WinDir$ + "control.ini", "drivers.desc", "msacm.drv", "Microsoft Sound Mapper V2.00", cmoOverwrite
  241.     CreateIniKeyValue WinDir$ + "control.ini", "drivers.desc", "msadpcm.acm", "Microsoft ADPCM Codec V2.00", cmoOverwrite
  242.     CreateIniKeyValue WinDir$ + "control.ini", "drivers.desc", "imaadpcm.acm", "Microsoft IMA ADPCM Codec V2.00", cmoOverwrite
  243.     Run ("regedit.exe /s " + MakePath(WinDir$, "mplayer.reg